package com.seari.mapper;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import com.seari.bean.QueryProBean;
import com.seari.bean.SelectObj;

public interface ProSearchMapper {

	List<SelectObj> proSearch(String proText);
	List<SelectObj> proSearchSAP(String proText);
	List<SelectObj> getProMajor();
	List<SelectObj> getProMajorSAP();

	List<SelectObj> getProNature();
	List<SelectObj> getProNatureSAP();
	List<Map<String, String>> getProCount(QueryProBean queryProBean);
	int getXKCountSAP(QueryProBean queryProBean);
	int getGDCountSAP(QueryProBean queryProBean);

	Map<String, String> getCount(QueryProBean queryProBean);

	List<Map<String, String>> queryProConMoney(QueryProBean queryProBean);
	//计划
	Integer queryMonthConMoneySAP(QueryProBean queryProBean);
	Integer queryYearConMoneySAP(QueryProBean queryProBean);
	//实际
	Integer queryMonthACConMoneySAP(QueryProBean queryProBean);
	Integer queryYearACConMoneySAP(QueryProBean queryProBean);

	List<Map<String, String>> queryProInvestment(QueryProBean queryProBean);

	Integer queryMonthInvestmentSAP(QueryProBean queryProBean);
	Integer queryYearInvestmentSAP(QueryProBean queryProBean);
	Integer queryMonthACInvestmentSAP(QueryProBean queryProBean);
	Integer queryYearACInvestmentSAP(QueryProBean queryProBean);

	List<String> getproIdsByCompanyIdAndNatureIdSAP(QueryProBean queryProBean);
	List<String> getInvestTmpSAP(QueryProBean queryProBean);
	List<String> getPayTmpSAP(QueryProBean queryProBean);
	List<String> getproIdsByCompanyIdAndNatureId(@Param("companyId")Object companyId,
			@Param("natureId")Object natureId);

	List<String> getConIdsByproIds(QueryProBean queryProBean);

	List<Map<String, String>> getInvestHoleIn(QueryProBean queryProBean);

	List<String> getConIdsByproId(@Param("proid")String proid);

	/**
	 * @param pb
	 * @return
	 * 滞后项目 及 滞后风险项目
	 */
	Map<String, Double> getProInvertLag(QueryProBean pb);

	/**
	 * @param pb
	 * @return
	 * 查询节点滞后数
	 */
	int getLagNode(QueryProBean pb);

	/**
	 * @param pb
	 * @return
	 * 查询资金风险滞后
	 */
	Map<String, Double> getProMoneyNumLag(QueryProBean pb);

	List<Map<String, String>> queryProName(@Param("proIdList")List<String> proIdList);

	List<String> queryConIdsList(QueryProBean queryProBean);
	List<String> queryConIdsListSAP(QueryProBean queryProBean);
	List<String> queryProIdsListSAP(QueryProBean queryProBean);

}
